package com.xiaoc.bulldozer.facade;

import com.xiaoc.bulldozer.common.dto.AwardPartnerDto;
import com.xiaoc.bulldozer.common.dto.AwardPartnerQueryDto;
import com.xiaoc.bulldozer.common.model.AwardPartner;

import java.util.List;
import java.util.Map;

/**
 * describe:
 *
 * @author lihuancheng
 * @date 2018/8/30
 */
public interface AwardPartnerFacade {
    /**
     * userId,partnerUserId更新tb_award_partner注册状态
     *
     * @param userId
     * @param partnerUserId
     */
    public void updatePaternRegistStatusByUserIdAndPartnerUserId(Integer userId, Integer partnerUserId);

    public List<AwardPartnerDto> getAllPartnerListByUserId(Integer userId);

    /**
     * 根据userId 获取点赞人数
     */
    public Integer getAllPartnerListCountByUserId(Integer userId);


    /**
     * 通过userId，roundCount 获取该roundCount成功注册数量
     *
     * @param userId
     * @param roundCount
     * @return
     */
    public int getRegistSuccessCountByUserIdAndRoundCount(Integer userId, Integer roundCount);


    public List<AwardPartnerDto> fillAwardPartnerDtoList(AwardPartnerQueryDto awardPartnerQueryDto);


    public List<AwardPartnerDto> fillAwardPartnerDtoListByList(List<AwardPartnerDto> awardPartnerDtoList);

    /**
     * 根据partnerUserId 获取最新一条点赞信息
     * @param partnerUserId
     * @return
     */
    public AwardPartner getRecentAwardPartnerByPartnerUserId(Integer partnerUserId);

    public void getParentGather(Integer parentUserId, Integer awardId, Map params);

}
